package com.coconet.gas.vo.dw;

import java.io.Serializable;
import java.util.Date;
import javax.persistence.*;

@Table(name = "week_pass_task")
public class WeekPassTask implements Serializable {
    @Id
    private Integer id;

    /**
     * 任务id
     */
    @Column(name = "task_id")
    private String taskId;

    /**
     * 任务名称
     */
    @Column(name = "task_name")
    private String taskName;

    /**
     * 扫描ip
     */
    private String ip;

    /**
     * 任务类型0为单次模式1为定时模式
     */
    private String type;

    /**
     * 添加时间
     */
    private Date time;

    /**
     * 任务状态
     */
    private Integer status;

    /**
     * 定时任务表达式
     */
    private String cron;

    /**
     * 任务组id
     */
    @Column(name = "group_id")
    private Integer groupId;

    /**
     * 任务组名称
     */
    @Column(name = "group_name")
    private String groupName;

    private static final long serialVersionUID = 1L;

    /**
     * @return id
     */
    public Integer getId() {
        return id;
    }

    /**
     * @param id
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 获取任务id
     *
     * @return task_id - 任务id
     */
    public String getTaskId() {
        return taskId;
    }

    /**
     * 设置任务id
     *
     * @param taskId 任务id
     */
    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }

    /**
     * 获取任务名称
     *
     * @return task_name - 任务名称
     */
    public String getTaskName() {
        return taskName;
    }

    /**
     * 设置任务名称
     *
     * @param taskName 任务名称
     */
    public void setTaskName(String taskName) {
        this.taskName = taskName;
    }

    /**
     * 获取扫描ip
     *
     * @return ip - 扫描ip
     */
    public String getIp() {
        return ip;
    }

    /**
     * 设置扫描ip
     *
     * @param ip 扫描ip
     */
    public void setIp(String ip) {
        this.ip = ip;
    }

    /**
     * 获取任务类型0为单次模式1为定时模式
     *
     * @return type - 任务类型0为单次模式1为定时模式
     */
    public String getType() {
        return type;
    }

    /**
     * 设置任务类型0为单次模式1为定时模式
     *
     * @param type 任务类型0为单次模式1为定时模式
     */
    public void setType(String type) {
        this.type = type;
    }

    /**
     * 获取添加时间
     *
     * @return time - 添加时间
     */
    public Date getTime() {
        return time;
    }

    /**
     * 设置添加时间
     *
     * @param time 添加时间
     */
    public void setTime(Date time) {
        this.time = time;
    }

    /**
     * 获取任务状态
     *
     * @return status - 任务状态
     */
    public Integer getStatus() {
        return status;
    }

    /**
     * 设置任务状态
     *
     * @param status 任务状态
     */
    public void setStatus(Integer status) {
        this.status = status;
    }

    /**
     * 获取定时任务表达式
     *
     * @return cron - 定时任务表达式
     */
    public String getCron() {
        return cron;
    }

    /**
     * 设置定时任务表达式
     *
     * @param cron 定时任务表达式
     */
    public void setCron(String cron) {
        this.cron = cron;
    }

    /**
     * 获取任务组id
     *
     * @return group_id - 任务组id
     */
    public Integer getGroupId() {
        return groupId;
    }

    /**
     * 设置任务组id
     *
     * @param groupId 任务组id
     */
    public void setGroupId(Integer groupId) {
        this.groupId = groupId;
    }

    /**
     * 获取任务组名称
     *
     * @return group_name - 任务组名称
     */
    public String getGroupName() {
        return groupName;
    }

    /**
     * 设置任务组名称
     *
     * @param groupName 任务组名称
     */
    public void setGroupName(String groupName) {
        this.groupName = groupName;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", taskId=").append(taskId);
        sb.append(", taskName=").append(taskName);
        sb.append(", ip=").append(ip);
        sb.append(", type=").append(type);
        sb.append(", time=").append(time);
        sb.append(", status=").append(status);
        sb.append(", cron=").append(cron);
        sb.append(", groupId=").append(groupId);
        sb.append(", groupName=").append(groupName);
        sb.append("]");
        return sb.toString();
    }
}